Method, apparatus, system, and non-transitory computer readable medium for controlling user access through content analysis of an application

ABSTRACT

A method, apparatus, system, and non-transitory computer readable medium for controlling user access through content analysis of an application are disclosed. The method for controlling access may include understanding a public level according to honorific language use by analyzing chat contents for each chat partner registered in an application, by the at least one processor; and controlling user access to the application based on the public level for each chat partner, by the at least one processor.

CROSS-REFERENCE TO RELATED APPLICATIONS

This U.S. non-provisional application is a continuation of U.S.application Ser. No. 16/460,041, filed on Jul. 2, 2019, which claims thebenefit of priority under 35 U.S.C. § 119 to Korean Patent ApplicationNo. 10-2018-0085827, filed on Jul. 24, 2018, in the Korean IntellectualProperty Office, the disclosure of each of which is incorporated hereinby reference in its entirety.

BACKGROUND Field

Various example embodiments relate to technology for reducing inputmistakes in an application.

Description of Related Art

An instant messenger is a general communication tool software which maytransmit and receive messages or data in real-time, and a user mayregister a chat partner in the messenger, may select the chat partnerfrom a chat partner list of the messenger, and send and receive messagesin real-time with the selected chat partner.

Such messenger function makes the use of the messenger common in notonly a PC environment, but also a mobile environment of a mobilecommunication terminal.

For example, a service system and method for mobile messenger of mobilephone using wireless communication network may provide a messengerservice between mobile messengers installed in mobile terminals.

SUMMARY

At least one example embodiment may reduce input mistakes in anapplication (e.g., a chat application and/or a chat room, etc.) bycontrolling a user's access and/or controlling a user input throughcontent analysis of the content previously input into the applicationand/or the user input itself.

A method executed in a computer system comprises at least one processorconfigured to execute computer readable instructions included in amemory, and the method comprises receiving, using the at least oneprocessor, chat contents related to a plurality of chat rooms in a chatapplication; analyzing, using the at least one processor, the chatcontents corresponding to a plurality of users registered in the chatapplication, the analyzing including determining a user public levelscore for each user participating in a chat room of a plurality of chatrooms of the chat application based on honorific language used by theuser in the chat content; and controlling, using the at least oneprocessor, user access of a graphical user interface (GUI) of the chatapplication based on the determined public level score for each user,the controlling including modifying a GUI corresponding to each of theplurality of chat rooms based on the determined user public level scorefor each user of each chat room of the plurality of chat rooms.

According to an aspect of at least one example embodiment, the analyzingcomprises extracting honorific language from the chat contents of eachof the plurality of chat rooms using a dictionary database, thedictionary database including an honorific language corpus, or honorificexpressions determined based on big data analysis of a plurality ofdocuments.

According to another aspect of at least one example embodiment, theanalyzing may comprise acquiring a social graph related to the chatapplication, the social graph including a plurality of users of the chatapplication, the plurality of users including users without chatcontents; and predicting a public level of a corresponding chat partnerof at least one chat room of the plurality of chat rooms based onrelation analysis of the social graph.

According to another aspect of at least one example embodiment, themethod may further comprise determining, using the at least oneprocessor, a public level of each chat room of the plurality of chatrooms using a public level of the users included in each of the chatrooms.

According to another aspect of at least one example embodiment, themethod may further comprise calculating, using the at least oneprocessor, a confidence score based on the user public level score of atleast one user of the chat room based on a number of total chat messagesand chat frequency for each of the at least one user of the chat room;and the determining the public level for each chat room includesdetermining the public level for each chat room based on a public levelof at least one user in the chat room whose confidence score is above adesired threshold among the users in the chat room, or by assigningweights according to the confidence score for the public level of the atleast one user in the chat room.

According to another aspect of at least one example embodiment, thecontrolling may comprise sorting a chat partner list or generating achat partner group based on the user public level score for each user.

According to another aspect of at least one example embodiment, thecontrolling may comprise automatically setting a deactivating lock on aninput tool of the GUI of the chat room based on the public level of thechat room.

According to another aspect of at least one example embodiment, thecontrolling may comprise overlaying an inactivation window on an inputtool of the GUI of the chat room based on the public level of the chatroom, the inactivation window deactivating the input tool; anddisplaying guidance information on the inactivation window, the guidanceinformation related to a public relation of the users of the chat room.

According to another aspect of at least one example embodiment, thecontrolling may comprise highlighting or autocorrecting words input inthe GUI of the chat room based on the public level of the chat room.

According to another aspect of at least one example embodiment, thecontrolling may comprise receiving a user input corresponding to acontent share operation; and displaying a notification regardingcontents to be shared by the content share operation based on the publiclevel of the chat room.

According to another aspect of at least one example embodiment, thecontrolling may comprise recommending an emoticon or a stickercorresponding to the public level of the chat room through the GUI ofthe chat room.

According to another aspect of at least one example embodiment, thecontrolling may comprise determining a public level change score betweena public level of a current chat room of a user and a public level of aprevious chat room of the user; and displaying a notification to thecurrent chat room in response to the public level score change beingabove a desired change level score when displaying the current chatroom.

According to another aspect of at least one example embodiment, thecontrolling may comprise displaying different display elementscorresponding to the chat room based on the public level of the chatroom.

According to another aspect of at least one example embodiment, thecontrolling may comprise sorting a chat room list, or grouping anddisplaying the plurality of chat rooms based on the public level of theplurality of chat rooms.

According to another aspect of at least one example embodiment, thecontrolling may comprise displaying a shared object list GUI in the GUIof the chat application, the displaying the shared object list GUIincluding separating a user or a chat room included in the shared objectlist based on the public level of the user or the public level of thechat room, the shared object list GUI including objects to be sharedbetween the chat application and a second application.

According to another aspect of at least one example embodiment, themethod may further comprise analyzing, using the at least one processor,the chat contents of the at least one chat room of the plurality of chatrooms; extracting, using the at least one processor, at least one mainsubject of the at least one chat room based on the analyzing the chatcontents of the at least one chat room; and analyzing, using the atleast one processor, chat content input by the user into the chat roomGUI, wherein the controlling comprises displaying a notification on thechat room GUI based on the extracted at least one main subject of thechat room and results of the analyzing the chat contents input by theuser.

According to another aspect of at least one example embodiment, theanalyzing may comprise extracting honorific title endings or honorifictitle nouns in the chat contents as honorific language; calculating afrequency of the honorific language extracted from the chat contents;calculating an importance score of the extracted honorific language inrelation to the extracted honorific language use in a sentence; andcalculating a public score of the chat contents based on the calculatedfrequency of the honorific language and the calculated importance score.

According to another aspect of at least one example embodiment,calculating the public score based on at least one of average sentencelength of the chat contents, frequency of use of nonstandard language ofthe chat contents, completion of sentence structure of the chatcontents, or combinations thereof.

According to another aspect of at least one example embodiment, thecalculating the public score comprises calculating the public scorebased on weights assigned to a contact group name in which the user isincluded, short range communication with the user, and contents sharedwith the user.

A computer system comprising a memory; and at least one processor whichis connected with the memory, and configured to execute computerreadable instructions to, receive chat contents related to a pluralityof chat rooms in a chat application, analyze the chat contentscorresponding to each user of a plurality of users registered in thechat application, the analyzing including determining a user publiclevel score for each user participating in a chat room of a plurality ofchat rooms of the chat application based on honorific language used bythe user in the chat content, and determining a chat room public levelscore for each chat room of the plurality of chat rooms based on thedetermined user public level scores of the chat room; and control useraccess of a graphical user interface (GUI) for each of the chat roomsbased on the determined chat room public level score for the chat room,the controlling including modifying the GUI corresponding to each of theplurality of chat rooms.

BRIEF DESCRIPTION OF THE DRAWINGS

These and/or other aspects, features, and advantages of the exampleembodiments will become apparent and more readily appreciated from thefollowing description of various example embodiments, taken inconjunction with the accompanying drawings of which:

FIG. 1 illustrates an example of a network environment according to atleast one example embodiment;

FIG. 2 is a block diagram illustrating example internal configurationsof an electronic device and a server according to at least one exampleembodiment;

FIG. 3 illustrates an example of elements that at least one processor ofan electronic device may include according to at least one exampleembodiment;

FIG. 4 is a flow chart illustrating an example of a method that anelectronic device may perform according to at least one exampleembodiment;

FIGS. 5 to 11 illustrate various examples of controlling user accessaccording to public score of chat room according to at least one exampleembodiment.

DETAILED DESCRIPTION

Hereinafter, some example embodiments will be described in detail withreference to the accompanying drawings.

At least one example embodiment relates to technology for reducing inputmistakes in an application.

One or more example embodiments may reduce input mistakes (e.g., userinput mistakes, etc.) in an application (e.g., software application,etc.) by controlling user access through content analysis of theapplication, and through this, significant advantages may be achieved interms of efficiency, service quality, convenience, and the like.

FIG. 1 illustrates an example of a network environment according to atleast one example embodiment. The network environment of FIG. 1indicates an example including a plurality of electronic devices 110,120, 130, 140, a plurality of servers 150, 160, and a network 170. FIG.1 illustrates at least one example embodiment, but the exampleembodiments are not limited thereto, and for example, the number ofelectronic devices and servers may differ from what is show in FIG. 1 ,and the system may also include other components as well.

The plurality of electronic devices 110, 120, 130, 140 may be fixedterminals or mobile terminals. As an example of the electronic devices110, 120, 130, 140, there are a smart phone, a mobile phone, anavigation device, a computer, a laptop, a digital broadcastingterminal, a PDA (Personal Digital Assistants), a PMP (PortableMultimedia Player), a tablet device, a game console, a wearable device,an IoT (Internet of Things) device, a VR (virtual reality) device, an AR(augmented reality) device, and the like. As an example, FIG. 1indicates a form of a smart phone as an example of the electronic device110, but in the example embodiments, the electronic device 110 mayactually be one of various physical computer systems which maycommunicate with other electronic devices 120, 130, 140, etc., and/orthe servers 150, 160, etc., through the network 170 by using a wirelessand/or wired communication method.

The communication method is not limited, and it may include not only acommunication method using at least one network, e.g., network 170 whichmay include a mobile communication network, the wired Internet, thewireless Internet, a broadcasting network, a satellite network, and thelike, but also short-range wireless communication. For example, thenetwork 170 may include any at least one of a PAN (personal areanetwork), a LAN (local area network), a CAN (campus area network), a MAN(metropolitan area network), a WAN (wide area network), a BBN (broadbandnetwork), the Internet, and the like. Also, the network 170 may includeany one or more among network topologies including bus network, starnetwork, ring network, mesh network, star-bus network, tree orhierarchical network, and the like, but it is not limited thereto.

Each of the servers 150, 160 may be implemented as a computer device, ora plurality of computer devices, and may provide an instruction (e.g.,computer readable instruction), a code, a file, a content, a service,and the like, by communicating with the plurality of electronic devices110, 120, 130, 140 through the network 170. For example, the server 150may be a system providing a first service to the plurality of electronicdevices 110, 120, 130, 140 connected through the network 170, and theserver 160 also may be a computer system providing a second service tothe plurality of electronic devices 110, 120, 130, 140 connected throughthe network 170. As more particular example, the server 150 may providea service (e.g., a messenger service and the like) which a correspondingapplication is intended for to the plurality of electronic devices 110,120, 130, 140 as the first service through the application as a computerprogram installed and run in the plurality of electronic devices 110,120, 130, 140, but the example embodiments are not limited thereto. Asanother example, the server 160 may provide a service for distributingfiles for the above described application installation and running tothe plurality of electronic devices 110, 120, 130, 140 as the secondservice, etc.

FIG. 2 is a block diagram illustrating internal configuration of anelectronic device and a server according to at least one exampleembodiment. The internal configuration of the electronic device 110 andthe server 150 is described in FIG. 2 as an example of an electronicdevice, however the example embodiments are not limited thereto. Also,other electronic devices 120, 130, 140 or the server 160 also may haveinternal configuration same with or similar to the above describedelectronic device 110 or the server 150.

The electronic device 110 and the server 150 may include memories 211,221, processors 212, 222, communication modules 213, 223, andinput/output interfaces 214, 224. The memories 211, 221 which arenon-transitory computer readable recording medium may include apermanent mass storage device such as RAM (random access memory), ROM(read only memory), a disc drive, SSD (solid state drive), flash memory,and the like. Here, the permanent mass storage device such as ROM, SSD,flash memory, disk drive, and the like may be included in the electronicdevice 110 or the server 150 as a separate permanent storage devicedistinct from the memories 211, 221. Also, the memories 211, 221 maystore an OS (Operating System) or at least one program code (e.g. a codefor a browser installed and run in the electronic device 110 or anapplication installed and run in the electronic device 110 to provide aspecific service). The software components may be loaded fromcomputer-readable recording medium separate from the memories 211, 221.The separate computer-readable recording medium may include anon-transitory computer-readable recording medium such as a floppydrive, a disc, a tape, a DVD/CD-ROM drive, a memory card, and the like.In other example embodiments, the software components may be loaded tothe memories 211, 221 through the communication modules 213, 223, andnot through the non-transitory computer-readable recording medium. Forexample, at least one program may be loaded to the memories 211, 221based on a computer program (e.g., the above described application)which is installed by files that developers or file distributing systemsdistributing application installation files (e.g., the above describedserver 160) provided through the network 170.

The processors 212, 222 may be at least one processor, or a plurality ofprocessors, and may be configured to process computer programinstructions by performing basic arithmetic, logic, and input/outputoperation. The instructions may be provided to the processors 212, 222by the memories 211, 221 or the communication modules 213, 223. Forexample, the processors 212, 222 may be configured to execute specialpurpose computer readable instructions of special purpose program codecorresponding to one or more of the example embodiments stored in therecording device such as the memories 211, 221, thereby transforming theprocessors 212, 222 into a special purpose processor for performing themethods of the example embodiments.

The communication modules 213, 223 may provide a function forcommunication between the electronic device 110 and the server 150through the network 170 and provide a function for communication betweenthe electronic device 110 and/or the server 150 with other electronicdevices (e.g., the electronic device 120) or other servers (e.g., theserver 160). For example, a request that the processor 212 of theelectronic device 110 generates according to a program code stored in arecording device such as the memory 211 may be transmitted to the server150 through the network 170 according to control of the communicationmodule 213. Conversely, a control signal or an instruction, a content, afile, and the like which are provided according to control of theprocessor 222 of the server 150 may be received to the electronic device110 through the communication module 213 of the electronic device 110 bygoing through the communication module 223 and the network 170. Forexample, the control signal or the instruction, the content, the file,and the like of the server 150 received through the communication module213 may be transmitted to the processor 212 or the memory 211, and thecontent or the file, and the like, may be stored in the storage medium(e.g., the above described permanent storage device, etc.) that theelectronic device 1 110 may further include.

The input/output interface 214 may be a means for interfacing with aninput/output device 215. For example, an input device may include adevice such as a keyboard, a mouse, a microphone, a camera, etc., and anoutput device may include a device such as a display, a speaker, ahaptic feedback device, and the like. As another example, theinput/output interface 214 may be a means for interfacing with a devicein which an input function and an output function are integrated into asingle function such as a touch screen. The input/output device 215 maybe configured with the electronic device 110 as one device. Also, aninput/output interface 224 of the server 150 may be a means ofinterfacing with a device (not illustrated) for input or output whichare connected with the server 150 or the server (150) may include. Asmore specific example, when processing the computer program instructionsloaded to the memory 211, the processor 212 of the electronic device 110may display a service screen or content configured by using dataprovided by the server 150 or the electronic device 120 on the displaythrough the input/output interface 214.

Also, in other example embodiments, the electronic device 110 and theserver 150 may include more components than the components shown in FIG.2 . For example, the electronic device 110 may be implemented to includeat least part of the described input/output device 215 or furtherinclude other components such as a transceiver, a GPS (GlobalPositioning System) module, a camera, various sensors, a database, andthe like. As a more specific example, when the electronic device 110 isa smart phone, various components such as an acceleration sensor or agyro sensor, a camera module, various physical buttons, a button usingtouch panel, an input/output port, a motor for vibrating, and the like,that the smart phone usually includes may be implemented to be furtherincluded in the electronic device 110.

Hereinafter, a particular example embodiment of a method, an apparatus,a system, and/or non-transitory computer readable medium for controllinguser access through content analysis of an application is described,however the example embodiments are not limited thereto.

An application (e.g., software application, etc.) according to at leastone example embodiment includes a function for controlling user accessfor the application through chat content analysis. The application mayinclude a social media application for providing a social networkingservice, such as a messenger service, an instant messenger service, atimeline application, a photo sharing service, a calendar service, avideochat service, a file sharing service, an online gaming service,VoIP service, a SMS service, an email service, and/or othercommunication service, and the like. In the case of the messenger (e.g.,messenger service), access to a chat room which is a chat relatedinterface (e.g., graphical user interface, etc.) may be controlledthrough chat content analysis.

Hereinafter, some example embodiments are described using the messengeras an example, but the example embodiments are not limited thereto, andfeatures related to the example embodiments may be applied to variousapplications, such as social media applications, calendars, emailapplications, SMS applications, video chat applications, VoIPapplications, timelines, etc., other than the messenger.

A messenger service is not only used to communicate with personalrelations, such as family or friends, but may also be used as acommunication means for public relations, such as business purposesincluding work, etc.

Since in the messenger services, most chat rooms are not separated intopersonal space, and public space, and the chat rooms may be mixed andarranged in one list, it occurs that a person makes a mistake regardinga chat room and delivers the wrong or inappropriate contents to the chatroom. Particularly, mistakes in public space may be more than a simplemisunderstanding and may affect one's social reputation, employmentreputation, business deals, and/or lead to restrictions, such asdefamation and the like in some cases.

At least one example embodiment may provide a function for controllingaccess of a chat room according to a public level by understanding thepublic level for the chat room through chat analysis to reduce and/orprevent unintentional input mistakes of a user in a messenger.

FIG. 3 illustrates an example of elements that at least one processor ofan electronic device may include according to at least one exampleembodiment, and FIG. 4 is a flow chart illustrating an example of amethod that an electronic device may perform according to at least oneexample embodiment.

In the electronic device 110 according to at least one exampleembodiment, an access controlling system implemented with a computer maybe configured. For example, the access controlling system may beimplemented in an independently operating program form, or implementedto be able to operate on a particular application by being configured inan in-app form of the particular application, and may provide a functionfor controlling user access through chat analysis in a messenger servicethrough interworking with the server 150 in some cases, but the exampleembodiments are not limited thereto.

The access controlling system implemented in the electronic device 110based on instructions provided by the application installed in theelectronic device 110 may perform an access controlling method. Toperform an access controlling method according to FIG. 4 , the processor212 (and/or a plurality of processors) of the electronic device 110which is as components may include a public level understanding unit310, a subject extracting unit 320, and/or an access controlling unit330, etc., as illustrated in FIG. 3 , but is not limited thereto.According to at least one example embodiment, components of theprocessor 212 may be selectively included or excluded in the processor212. Also, according to at least one example embodiment, components ofthe processor 212 may be divided or combined to express functions of theprocessors.

The processor 212 and the components of the processors 212 may controlthe electronic device 110 to perform steps S410 to S430 that the accesscontrolling method of FIG. 4 includes. For example, the processor 212and the components of the processor 212 may be implemented to executeinstructions according to OS code and at least one program code that thememory 211 includes.

Here, the components of the processor 212 may be expressions ofdifferent functions of the processor 212 performed by the processor 212according to special purpose computer readable instructions provided bythe program code stored in the electronic device 110 (e.g., instructionsprovided by the application run in the electronic device 110) to performthe methods of at least one example embodiment, thereby transforming theprocessor 212 into a special purpose processor to perform the exampleembodiments. For example, the public level understanding unit 310 may beused as a functional expression of the processor 212 controlling theelectronic device 110 according to the above described instructions suchthat the electronic device 110 understands a public level for a chatroom.

The processor 212 may read desired and/or required instructions from thememory 211 in which instructions related to control of the electronicdevice 110 are loaded. In this case, the read instructions may includeinstructions for controlling the processor 212 to perform hereinafterdescribed steps S410 to S430, etc.

In S410, the public level understanding unit 310 may understand (and/ordetermine) a public level for a chat partner by analyzing chat contents(e.g., messages, texts, emails, voice communications, etc.) exchangedbetween a user of the electronic device 110 and the chat partner by chatpartner registered in the messenger. For example, the public levelunderstanding unit 310 may calculate a public score according tohonorific language use by extracting honorific language and/or formallanguage, etc., within the chat that the user has with the chat partner,but the example embodiments are not limited thereto. Here, the publiclevel understanding unit 310 may calculate a public score by usinghonorific language use (and/or formal language use, etc.) frequencycompared to the whole chat, honorific language importance within thechat, and the like. Also, the public level understanding unit 310 maycalculate a public score by further using chat sentence length, slanguse frequency, completeness of sentence, proper grammatical usage, andthe like. Therefore, the public level understanding unit 310 mayunderstand a public level indicating public relation with the chatpartner by analyzing the chat contents between the user and the chatpartner (e.g., the intended message recipient).

In S420, the public level understanding unit 310 may understand a publiclevel of a chat room in the messenger based on the public level of achat partner. The chat room may include one or more chat partners, andhere, the public level understanding unit 310 may calculate a publicscore for a corresponding chat room by using a public score of each chatpartner included in each chat room by chat room.

In S430, the access controlling unit 330 may control user access for achat room based on the public level by chat room in the messenger. Here,the access controlling unit 330 may control sorting or displaying ofchat room list of the messenger, input lock of chat room, screendisplay, notice display, sending words correction, contentrecommendation, and the like, based on the public score by chat room,but the example embodiments are not limited thereto.

Furthermore, the subject extracting unit 320 may extract the mainsubject of a corresponding chat room by analyzing the chat contentsincluded in each chat room by chat room. The subject extracting unit 320may calculate the word importance of each word within the chat contentsbased on the frequency of the words that appeared in the chat contentsof the chat room, and find at least one main keyword. Accordingly, theaccess controlling unit 330 may control input of the chat room based onthe extracted main subject.

Particular example embodiments of the process for calculating the publicscore by chat partner S410 are as follows.

The following data may be used for each chat partner in order tocalculate public score, but the example embodiments are not limitedthereto.

(1) Frequency of Honorific Language and its Importance in a Sentence(s)

The public level understanding unit 310 may understand the public levelby analyzing how much (e.g., how often) honorific language is used, andhow much the used honorific language is important in a sentence (e.g.,the importance of the use of the honorific language in the sentence(s)).

Particularly, the public level understanding unit 310 may divide thephrases and words in each paragraph and/or sentence in the chat contentsafter dividing the paragraphs and sentences in the chat contentsexchanged between the user and the chat partner through the Tokenizer.

The public understanding unit 310 may extract each morpheme in phrasesand/or words divided through morpheme analysis, analysis of the parts ofspeech, and/or basic form analysis of Natural Language Processing, etc.,but the example embodiments are not limited thereto.

The public level understanding unit 310 may understand whether eachmorpheme corresponds to honorific language indicating an honorific titleand/or a term of respect based on honorific language corpus, honorificlanguage morpheme, and the like, which are constructed within adictionary database. For example, the public level understanding unit310 may detect honorific title endings and/or honorific title nounsduring analysis of the parts of speech of the text, etc. The honorifictitle is indicated through mainly a word (phrase), a suffix (orpreposition), a prefinal ending, closing expression, and the like. Inthe case of English grammar, ‘Sir’, ‘madam’, and the like, used at theend of a sentence, ‘Mr’, ‘Ms’, ‘Dear’, and the like, used instead ofname, and would, could, and the like, which are interrogative sentenceauxiliary verbs, may be expression of honorific title. For example, whencomparing with ‘Thank’, ‘appreciate’, ‘be obliged to’, and the like, maybe more formal honorific language expression, and when comparing ‘tellme’, ‘let me know’ may be more formal honorific language expression.

The public level understanding unit 310 may not only extract honorificlanguage in chat contents by using attributes indicating that a worditself falls within an honorific class provided by the dictionarydatabase, but the public level understanding unit 310 may also analyzefeatures related to honorific language by collecting documents with manyforms of formally honorific expression, for example, diplomaticdocuments, corporation announcements, business documents, legaldocuments, news articles, and the like, and based on the big dataanalysis result, honorific language in chat contents may be extracted.

The public level understanding unit 310 may analyze the honorificlanguage use frequency of extracted chat contents in comparison to thewhole (e.g., entire) chat contents, and may calculate word importance ofcorresponding honorific language in the extracted chat contents based onthe honorific language use frequency. For example, the public levelunderstanding unit 310 may calculate the importance of honorificlanguage within the chat contents by using TF-IDF (TermFrequency-Inverse Document Frequency) for calculating word importancewithin documents based on frequency and N-gram for understandingrelation between words by making words existed before and after withindocuments to a model, etc., but the example embodiments are not limitedthereto.

(2) Honorific Phrases Ratio

The public level understanding unit 310 may classify honorific phrasesby analyzing chat contents in measures of phrase units, and calculatehonorific phrase ratio in the chat. The public level understanding unit310 may calculate the honorific phrase ratio compared to whole phrasesof sentences by selecting honorific phrases including honorific languageamong phrase units in sentences, etc., but the example embodiments arenot limited thereto.

(3) Sentence Length Ratio

The public level understanding unit 310 may calculate the average lengthof sentences in chat contents exchanged with a chat partner, andcalculate the sentence length ratio compared to an average sentencelength ratio of the total chat partners. Considering that as thesentences are shorter in comparison to a desired threshold, such as theaverage among the total chat partners, etc., the probability that chatparticipants have a personal relationship is higher, and on the contrary(e.g., in contrast), as the sentences are longer, the probability thatthey are in public relation (e.g., formal and/or business relationship,etc.) is higher, the sentence length ratio may be used to calculate apublic score.

(4) Nonstandard Language Use Ratio

The public level understanding unit 310 may calculate the nonstandardlanguage use frequency in chat contents exchanged with a chat partner byusing the dictionary database, the dictionary database includingnonstandard language such as abbreviations, slang, words used in one ormore dialects, buzzwords, and the like, and calculate the nonstandardlanguage use ratio compared to the average nonstandard language useratio among the total chat partners. Considering that as nonstandardlanguage use frequency is lower in comparison to a desired threshold,such as the average among the total chat partners, etc., the probabilitythat the chat participants are in public relation is higher, nonstandardlanguage use frequency may be used to calculate a public score.

(5) Sentence Completeness Ratio

The public level understanding unit 310 may calculate the use frequencyof sentences having completed structure (e.g., sentence completenessratio, complete sentence ratio, etc.) in chat contents exchanged with achat partner, and may calculate the sentence completeness ratio comparedto the average sentence completeness ratio among the total chatpartners, etc. For example, Korean sentence structure is based on anarrangement order of subject-(object)-predicate, and by understandinghow many sentences having completed structure are occupied in the wholechat, the relation type of the chat partner may be inferred. Consideringthat more personal relation represents destruction of sentence structure(e.g., less likelihood of using complete sentences, etc.), sentencecompleteness ratio may be used in calculating a public score.

(6) Contact Group Extra Point

The public level understanding unit 310 may assign weights (e.g.,desired weights, scores, etc.) indicating a public level by analyzingthe name of a contact group in which a chat partner is included amongcontact groups in a contact application (e.g., contact list, phone book,address book, instant messenger buddy list, social networking servicecontact list, etc.) of the electronic device 110. The weights accordingto a public level for the name of contact group generated in the contactapplication of the electronic device 110 may be predefined (and/or adesired weight may be applied to each contact group, etc.). For example,when the contact group in which the chat partner is registered is thename indicating a public relation, such as a company or a client, acontact group extra point (e.g., a desired weight) may be assigned forthe corresponding chat partner.

(7) Short Distance Extra Point

The public level understanding unit 310 may assign weights (e.g.,desired weights, scores, etc.) indicating a public level for the chatpartner located around the user in a desired and/or preset publiclocation by using short range communication (e.g., WiFi, Bluetooth, NFC,etc.) of the electronic device 110. For example, the public levelunderstanding level 310 may assign a short distance extra point (e.g., adesired short distance weight, etc.) for a chat partner detected asstaying around (e.g., being located close to) the user, detected asbeing located in a company location (e.g., building, store, restaurant,public venue, etc.) which is set by the user and/or otherwise designatedas being a public location.

(8) Content Extra Point

The public level 310 may assign weights indicating a public level forthe chat partner based on the type of content exchanged with the chatpartner and/or an image object recognition result. Text tag dictionaryin which a public level is defined may be pre-constructed, afterrecognizing objects in images of photos (e.g., images, GIFS, stickers,emojis, etc.) and/or videos exchanged with the chat partner based on thedictionary, a content extra point (e.g., a desired content weight,score, etc.) may be assigned according to a public level correspondingto a relevant tag for the text tag (e.g., comments associated with theimage/video, HTML, tags, XML tags, etc.) of the recognized object. Also,as the proportion of a particular type of contents among contentsexchanged with the chat partner, for example, screen shots, and/ordocuments, etc., is larger, it is likely to be a public relation, so thecontent extra point(s) may be assigned for the chat partner according tothe proportion of the corresponding contents.

The public level understanding unit 310 may calculate a first publicscore for a chat partner by using (1) the frequency of honorificlanguage and its importance in a sentence among the above describeddata.

The first public score may be defined as Equation 1.

$\begin{matrix}{{1_{st}{Score}_{x}} = \frac{{\sum}_{i = 0}^{n}\left( {s_{i} \times w_{i}} \right)}{N}} & \left\lbrack {{Equation}1} \right\rbrack\end{matrix}$

Here, 1_(st)Score_(x) represents a first public score for a chat partnerx, s represents a score assigned to each morpheme corresponding tohonorific language, w represents a weight assigned to the importance ofeach morpheme corresponding to honorific language, and N represents thetotal number of chats.

Furthermore, the public level understanding unit 310 may calculate afinal public score for a chat partner by further using additionalcriterion to calculate the final public score, the additional criterionincluding at least one among (2) honorific phrases ratio, (3) sentencelength ratio, (4) nonstandard language use ratio, (5) sentencecompleteness ratio, (6) contact group extra point, (7) short distanceextra point, and (8) content extra point, etc., but the exampleembodiments are not limited thereto.

For example, the final public score may be defined as Equation 2.

score_(x)=1_(st)Score_(x) ×R _(p) ×R _(l) ×R _(s) ×R _(c) +w _(c) +w_(p) +w _(i)  [Equation 2]

Here, Scorer represents a final public score for a chat partner x, R_(p)represents honorific phase ratio, R_(l) represents sentence lengthratio, R_(s) represents nonstandard language use ratio, R_(c) representssentence completeness ratio, w_(c) represents contact group extra point,w_(p) represents short distance extra point, and w_(i) representscontent extra point.

In addition, the public level understanding unit 310 may calculate theconfidence for a public score for a chat partner by using the number ofchats and chat frequency, etc., and for example, the confidence may becalculated through Equation 3.

$\begin{matrix}{{Confidence}_{n} = {{f\left( {{number}{of}{total}{chats}} \right)} \times \left\{ \frac{{average}{number}{of}{chats}a{day}_{n}}{{average}{number}{of}{total}{chats}a{day}} \right\}}} & \left\lbrack {{Equation}3} \right\rbrack\end{matrix}$

Here, Confidence_(n) which represents a confidence score (e.g.,confidence level, etc.) for a public score of a chat partner n may becalculated with the average number of chats a day exchanged with thechat partner n compared to the average number of total chats a dayexchanged with the total chat partners.

The desired and/or required minimum number of chats may be set forcalculating confidence for a public score of a chat partner, andconfidence function based on the minimum number of chats is as follows.

${f(x)} = \left\{ \begin{matrix}{0,} & {x < a} \\{1,} & {x \geq a}\end{matrix} \right.$

Here, a represents minimum number of chats.

If the public score of the chat partner has a confidence score that isbelow a threshold, the public score may be invalidated, and the publicscore of the chat partner with a confidence score that is above thethreshold, may be valid and/or guaranteed, and may be used incalculating a public score by chat room as effective data. As anotherexample, graded weights may be assigned for the public score of the chatpartner according to the confidence score (e.g., confidence level,etc.), which may be used in calculating a public score by chat room.

The process for calculating a public score based on chat contents isdescribed above, and a method for calculating a public score of a chatpartner who has no chat content with a user (e.g., the user has notchatted with and/or communicated with a chat partner, etc.) is asfollows.

The public level understanding unit 310 may predict a public score for achat partner through relation analysis by acquiring a social graphrelated to a user from the server 150. For this, the public levelunderstanding unit 310 may acquire a social graph between people formedwithin a messenger service, social networking service, etc., and chatfrequency from a server 150, and then, connect relations between thepeople with edges (e.g., connect links between the people represented bythe graph) and form a network graph of friendship which sets the chatfrequency as weights of the edge. Here, the public level understandingunit 310 may cluster the friendship within the network graph, and then,estimate, for example, the average value and/or the median value of apublic score of the friends in a cluster as a public score for acorresponding chat partner from the public score of friends included inthe corresponding cluster for the cluster in which a chat partner havingno chat content with the user is included.

Similarly, in case of the chat partner having no chat content with theuser, at least one of (6) contact group extra point (e.g., desiredcontact group weight) and (7) short distance extra point (e.g., desiredshort distance weight) among the above described data may beadditionally reflected to the public score.

Particular example embodiments of a process for calculating a publicscore by chat room S420 are as follows.

The public level understanding unit 310 may calculate a public score ofa corresponding chat room by using a public score of a chat partnerincluded in each chat room by chat room when calculating a public scorefor each chat partner registered in a messenger service, socialnetworking service, etc., is completed.

For example, the public score of chat room may be defined as Equation 4.

${Score}_{x} = \frac{{\sum}_{i}\left( {S_{i} \times R_{i}} \right)}{N_{x}}$

Here, Scorer represents a public score for chat room x, S_(i) representsa public score for a chat partner i, R_(i) represents ratio of thenumber of chats of the chat partner i, and N_(x) represents the numberof people included in the chat room x.

R_(i) is the same with R_(i)={(number of chats by i+CI_(i)/(number oftotal chats in chat room)}, CI_(i) represents the number of times thatthe chat partner i starts the chat.

A process for extracting a main subject by chat room is as follows.

The subject extracting unit 320 may extract text and/or images in chatcontents exchanged in a chat room. Here, the subject extracting unit 320may extract text and/or images in a clipboard used in a chat room and/orextract text and images in webpage contents of a corresponding URL byprefetching the URL shared through the chat room.

The subject extracting unit 320 may divide phrases and words in eachparagraphs and/or sentences after separating the paragraphs and/orsentences in chat contents through the Tokenizer, and then, may extracteach morpheme through morpheme analysis, basic form analysis, analysisof parts of speech, and the like, according to Natural LanguageProcessing, and may extract text tags of objects included in imagesthrough image object recognition in case of images, etc.

The subject extracting unit 320 may select at least one main subject ineach morpheme extracted from the chat contents through TF-IDF and N-gramanalysis, etc. The subject extracting unit 320 may find keywords withhigh importance among nouns or pronouns frequently appeared by usingTF-IDF for calculating the word importance in documents based onfrequency and N-gram analysis for understanding relation betweenadjacent words.

Therefore, the subject extracting unit 320 may extract the main subjectrelated to a corresponding chat room (e.g., the main subject/topic of achat room) through chat content analysis of each chat room by chat room(e.g., each chat room of a plurality of chat rooms, etc.). The mainsubject by chat room is available to control user access for acorresponding chat room (e.g., allow or prohibit a user from accessing achat room).

In the above, the electronic device performs the process forunderstanding public level S410 to S420 and the process for extractingmain subject based on instructions provided by the application installedin the electronic device 110, but it is not limited thereto, andaccording to at least one example embodiment, the server 150 maydirectly perform the above-described processes by interlocking theapplication installed in the electronic device 110.

Particularly, the processor 222 of the server 150 may include a publiclevel understanding unit and/or a subject extracting unit, etc., inorder that the server 150 performs a part of the method for accesscontrol according to FIG. 4 , but is not limited thereto. According toat least one example embodiment, the components of the processor 222 maybe selectively included or excluded in the processor 222. Also,according to at least one example embodiment, the components of theprocessor 222 may be divided or combined to express functions of theprocessor 222.

The processor 222 and the components of the processor 222 may controlthe server 150 to perform the process for understanding public levelS410 to S420 and/or the process for extracting main subject, but are notlimited thereto. For example, the processor 222 and the components ofthe processor 222 may be implemented to execute computer readableinstructions according to OS code and at least one special purposeprogram code (e.g., computer readable instructions) included in thememory 221 corresponding to, for example, the process for understandingpublic level and/or the process for extracting main subject, etc.,thereby transforming the processor 222 into a special purpose processor.

The public level understanding unit and/or the subject extracting unitincluded in the processor 222 of the server 150 performs the process forunderstanding public level S410 to S420 and/or the process forextracting main subject as the same with or as corresponding to thepublic level understanding unit 310 and/or the subject extracting unit320 described through FIG. 3 , so particular description for thecomponents of the processor 222 is omitted.

In other words, the public score calculation and/or main subjectextraction is performed in the electronic device 110, and it is alsopossible to perform the public score calculation and/or main subjectextraction in the server 150, and to provide the result value to theelectronic device 110. When the public score calculation and/or mainsubject extraction is performed in the electronic device 110,information which may not be acquired in the electronic device 110 insome cases may be requested and transmitted to the server 150, and thecorresponding processes may be performed. As another example, theelectronic device 110 may calculate a public score by chat partner in amessenger and upload it to the server 150, and accordingly, the server150 maintains the public score by chat partner for each user using themessenger service, and may provide the public score by chat partner infriendship with a user to a corresponding electronic device when arequest is made.

Particular example embodiments of a process for controlling user accessfor a chat room are as follows.

For example, the access controlling unit 330 may automatically apply alock setting for an input tool of a corresponding chat room when apublic score is above a public score threshold (e.g., a desiredthreshold) based on a public score of a chat room for each chat room.Referring to FIG. 5 , when entering a chat room 500 in which a publicscore is above a threshold, inactive window 510 inactivating the inputtool may be overlaid on the input tool including chat input window anddisplayed, or in other words, the graphical user interface (GUI) of thechat application may be modified to include the input tool based on theresults of the public score of the chat room and the desired threshold,and the modified GUI is displayed. The inactive window 510 may beoverlaid on the input tool in the chat room 500 so that all inputincluding simple text input, and such as photos, videos, emoticons(stickers), and the like, are unable. According to a request forunlocking of a user in a state where a lock is set in the chat room 500,for example, when long touching (and/or other gesture operation, userinput operation, etc.) the inactive window 510 for a certain time, theinactive window 510 is removed and/or disappears and the use of theinput tool is allowed.

As another example, the access controlling unit 330 may selectively setwhether or not to lock each chat room according to user setting, andhere, a chat room in which a public score is above a desired thresholdmay be recommended as a chat room for the input lock setting among chatrooms of the messenger in the user setting process.

As another example, as illustrated in FIG. 6 , when entering the chatroom 500 in which a public score is above a desired threshold, theaccess controlling unit 330 may simultaneously overlay (e.g., modify theGUI of the chat application, etc.) and display the inactive window 510to the input tool in the corresponding chat room 500 and display atleast one guidance information 611 among sentences and images indicatingpublic relation on the inactive window 510. Information for publicrelation may be provided by adding guidance information 611 to theinactive window 510. The guidance information 611 may be set withparticular sentences or images that a user wants, and collectively setfor all chat rooms where the public score is above the desired thresholdor individually set for each chat room. Chat room rating may be dividedbased on the public score in some case, and here, it is also possiblethat the guidance information 611 is set for each rating.

As another example, when a public score is above a threshold based on apublic score of a chat room, the access controlling unit 330 mayhighlight sentences input into the corresponding chat room (e.g., inputinto the corresponding chat room GUI) and autocorrect correspondingsentences. Referring to FIG. 7 , when text is input in chat input windowof the chat room 500 in which the public score is above the threshold,the access controlling unit 330 may apply highlight elements (e.g., redunderline, bold, emphasis, and/or other GUI elements, etc.) 720 tocorresponding sentences if the input text includes nonstandard languagesuch as abbreviations, slang, a dialect, a buzzword or misspelledsentences. Beside the highlight elements, a send button may be changedto different color and/or image from the original, or a pop-uprequesting for reconfirming sentences before sending text may beprovided when inputting send button. Also, when name of a chat partnerincluded in the chat room 500 is input in the chat input window, theaccess controlling unit 330 may automatically add and input an honorifictitle (e.g., ‘Mr’, ‘Ms.’, ‘Dr.’, ‘PhD’, ‘MS’, ‘Jr.’, ‘Sr.’, and thelike) before or after the name. In addition, when title is input byusing mention function in the chat input window of the chat room 500,the access controlling unit 330 may apply highlight elements to acorresponding title, change send button to different color or image fromthe original, or provide a pop-up requesting for reconfirming titlesbefore sending when inputting send button if it is determined that chatpartner of the corresponding title is existed in the chat room 500, andit is not existed.

As another example, the access controlling unit 330 may provide a noticefor contents to be shared through a corresponding chat room when apublic score is above a threshold based on a public score of a chatroom. Here, the access controlling unit 330 may display a warning screenwhen sharing, for example, photos, videos, text (clipboard), URL, andthe like, through the chat room where the public score is above thethreshold. Also, the access controlling unit 330 may analyze contents tobe shared through the chat room where the public score is above thethreshold, and may display a warning screen when the analysis result haslow correlation with the main subject of the chat room. For example,after analyzing a webpage corresponding to a URL that the user intendsto share with a chat room, for example by acquiring title and lead of awebpage, and the like, by prefetching webpage contents of URL, a pop-uprequesting reconfirmation that the user intended to share the webpageURL may be provided when correlation is low between the compared to mainsubject of the chat room. Reconfirmation may be requested through apop-up for contents having low correlation with the existing chatsubject of the chat room when sharing photos for playing in the water orfood photos and the like in the chat room in which only documents orscreen shots are existed, when sharing travel information URL or clipboard including travel review text in the chat room where contentsrelated to business is a main subject, and the like.

As another example, the access controlling unit 330 may recommendcontents for expression of opinions according to a public score of acorresponding chat room through the chat room. The contents forexpression of opinion are hieroglyphs used to express a user's feelingsor though and the like and, for example, emoticons, stickers, and thelike, may correspond to these, and rating for a public score may beassigned. Here, the access controlling unit 330 may recommend emoticonsand/or stickers of a rating corresponding to the public score of thechat room for each chat room. Also, according to the public score of thechat room, it is possible to set a set of contents for expression ofopinion that a user desires and/or preferentially wants to use, andarrange or recommend the set which is set by the user to desirablyand/or preferentially be used in a real chat room.

As another example, the access controlling unit 330 may generate chatpartner groups according to relations in a chat partner list based on apublic score of a chat partner, but is not limited thereto. Here, theaccess controlling unit 330 may sort the chat partner list in descendingorder or ascending order based on the public score of the chat partner,and display it. In addition, the access controlling unit 330 maygenerate chat partners whose public score is above a desired thresholdas a public chat group, and generate chat partners whose public score isbelow the desired threshold as a personal chat group. Rating of the chatpartners may be divided based on the public score in some case, andhere, it is also possible to generate the chat partner group by ratingof the chat partner.

As another example, the access controlling unit 330 may provide a noticeregarding the current chat room related to a chat room change event ifthe public score change between the current chat room and the previouschat room is above a certain level (e.g., a desired threshold) whenchanging the chat room. Since mistakes occur a lot when changing from achat room of a personal relation to a chat room of a public relation, itis possible to detect when the public score of the chat room is greatlydifferent as chat room changing monitoring. The access controlling unit330 may occur chat room change event by detecting when

$\frac{{Score}_{current} - {Score}_{previous}}{{Score}_{\max} - {Score}_{\min}} > \alpha$

(here, Score_(min) represents the smallest public score, Score_(max)represents the biggest public score, α is a setting value indicatingchanging sensitivity as a value from 0 to 1. Referring to FIG. 8 , atthe point of using a personal chat room 800 where a public score isbelow a desired threshold and selecting and entering another chat room500 in a chat room list, when a public score change between the currententered chat room 500 and the previous chat room 800 is above a certainlevel (e.g., a desired public score change threshold), a warning window830 indicating entering to a public chat room may be displayed in thecurrent entered chat room 500.

As another example, the access controlling unit 330 may differentlyapply and display the display elements of a chat room (e.g., the displayelements of the chat room GUI, etc.) according to a public score basedon a public score of a chat room. For example, as illustrated in FIG. 9, frame color 940 of the chat room 500 where the public score is abovethe threshold and the chat room 800 where the public score is below thethreshold may be differently displayed, but the example embodiments arenot limited thereto. The frame color of the chat rooms 500, 800 is setto the same with or similar to the background color as the public scoreis lower, while it may be set to complementary color of the backgroundcolor as the public score is higher. The public level of the currentchat room may be naturally and easily understood through displayelements differently displayed according to the public score when movingthe chat rooms 500, 800.

As another example, the access controlling unit 330 may sort a chat roomlist based on a public score. In other words, the access controllingunit 330 may sort the chat room list in descending order or ascendingorder according to the public score and display it. Or, the accesscontrolling unit 330 may divide the chat room list into a plurality ofrating (e.g., high, intermediate, low) based on the public score, andgroup and show the chat room list by rating and.

As another example, the access controlling unit 330 may differentlyapply display elements of items indicating each chat room in a chat listaccording to a public score, and display it. For example, referring toFIG. 10 , background color of a corresponding item may be displayed indark as a public score of the chat room is higher in a chat room list1050. Background color of a corresponding item for a chat room where apublic score is above a threshold in the chat room list 1050 may bedifferently displayed from other chat rooms, or a separate icon may bedisplayed on item of a chat room where a public score is above athreshold.

As another example, the access controlling unit 330 may differentlydivide chat partners or chat rooms included in a shared object list fromother shared objects according to a public score and display it whensharing contents, such as photos, videos, links, and the like, with amessenger, etc. For example, referring to FIG. 11 , when a shared objectlist 1100 for sharing contents is displayed, items related to a chatpartner or a chat room in which a public score is above a desiredthreshold may be highlighted and displayed with a different color ordisplayed with a separate icon among chat partners or chat rooms of themessenger included in the shared object list 1100.

Controlling user access with the same method when the public score ofchat room is above the desired threshold is described, but it is notlimited thereto, and it is also possible to control user access with amethod dividing rating of chat partners or chat rooms according to thepublic score and grading by rating.

Accordingly, public level for each chat partner and chat room may beunderstood by analyzing chat contents, and according to the publiclevel, user access for the chat room such as sorting or displaying achat room list of a messenger, input lock of chat room, screen display,notice display, sending sentence correction, contents recommendation,and the like, may be controlled according to the public level.

The units described herein may be implemented using hardware components,and/or a combination of hardware components and software components. Forexample, a processing device may be implemented using one or moregeneral-purpose computers loaded with, and executing, special purposeinstructions, and/or special purpose computers, such as, for example, aprocessor, a controller and an arithmetic logic unit, a digital signalprocessor, a microcomputer, a field programmable array, a programmablelogic unit, a microprocessor or any other device capable of respondingto and executing instructions in a defined manner. The processing devicemay run an operating system (OS) and one or more software applicationsthat run on the OS. The processing device also may access, store,manipulate, process, and create data in response to execution of thesoftware. For purpose of simplicity, the description of a processingdevice is used as singular; however, one skilled in the art will beappreciated that a processing device may include multiple processingelements and multiple types of processing elements. For example, aprocessing device may include multiple processors or a processor and acontroller. In addition, different processing configurations arepossible, such as parallel processors.

The software may include a computer program, a piece of code, aninstruction, or some combination thereof, for independently orcollectively instructing or configuring the processing device to operateas desired. Software and data may be embodied permanently or temporarilyin any type of machine, component, physical or virtual equipment,computer storage medium or device, or in a propagated signal wavecapable of providing instructions or data to or being interpreted by theprocessing device. The software also may be distributed over networkcoupled computer systems so that the software is stored and executed ina distributed fashion. In particular, the software and data may bestored by one or more computer readable recording mediums.

The example embodiments may be recorded in non-transitorycomputer-readable media including program instructions to implementvarious operations embodied by a computer. The media may also include,alone or in combination with the program instructions, data files, datastructures, and the like. The media and program instructions may bethose specially designed and constructed for the purposes of the exampleembodiments, or they may be of the kind well-known and available tothose having skill in the computer software arts. Examples ofnon-transitory computer-readable media include magnetic media such ashard disks, floppy disks, and magnetic tape; optical media such as CDROM disks and DVD; magneto-optical media such as floptical disks; andhardware devices that are specially configured to store and performprogram instructions, such as read-only memory (ROM), random accessmemory (RAM), flash memory, and the like. Examples of programinstructions include both machine code, such as produced by a compiler,and files containing higher level code that may be executed by thecomputer using an interpreter.

While certain example embodiments and implementations have beendescribed herein, other example embodiments and modifications will beapparent from this description. Accordingly, the example embodiments arenot limited to such embodiments, but rather to the broader scope of thepresented claims and various obvious modifications and equivalentarrangements.

What is claimed is:
 1. A method executed in a computer system, thecomputer system comprising at least one processor configured to executecomputer readable instructions included in a memory, wherein the methodcomprises: receiving, using the at least one processor, chat contentsrelated to a plurality of chat rooms in a chat application; analyzing,using the at least one processor, the chat contents corresponding to aplurality of users registered in the chat application and included inthe plurality of chat rooms, determining, using the at least oneprocessor, a public level of each chat room of the plurality of chatrooms based on a result of analyzing the chat contents with regard toeach chat room of the plurality of chat rooms; and controlling, usingthe at least one processor, user access of a graphical user interface(GUI) of the chat application based on the determined public level ofeach chat room, the controlling including modifying a GUI correspondingto each of the plurality of chat rooms based on the public level of eachchat room, wherein the controlling comprises, receiving a user inputcorresponding to a content share operation in association with a chatroom among the plurality of chat rooms, and displaying a notificationregarding contents to be shared by the content share operation based onthe public level of the chat room.
 2. The method of claim 1, wherein theanalyzing comprises extracting honorific language from the chat contentsof each of the plurality of chat rooms using a dictionary database, thedictionary database including an honorific language corpus, or honorificexpressions determined based on big data analysis of a plurality ofdocuments.
 3. The method of claim 1, wherein the analyzing comprises:acquiring a social graph related to the chat application, the socialgraph including the plurality of users of the chat application, theplurality of users including users without chat contents; and predictinga public level of a corresponding chat partner of at least one chat roomof the plurality of chat rooms based on relation analysis of the socialgraph.
 4. The method of claim 1, wherein the determining furthercomprises determining, using the at least one processor, the publiclevel of each chat room of the plurality of chat rooms using user publiclevel scores of users included in each of the plurality of chat rooms,and a user public level score of the user public level scores for eachuser included in each of the plurality of chat rooms is determined basedon a result of analyzing the chat contents with regard to each of theplurality of users.
 5. The method of claim 4, further comprising:calculating, using the at least one processor, a confidence score basedon the user public level score for each user based on a number of totalchat messages and chat frequency of the user, wherein the determiningthe public level for each chat room includes determining the publiclevel for each chat room of the plurality of chat rooms based on apublic level of each user in the chat room whose confidence score isabove a desired threshold among the plurality of users in the chat room,or by assigning weights according to the confidence score for the publiclevel of each user in the chat room.
 6. The method of claim 4, whereinthe controlling comprises sorting a chat partner list or generating achat partner group based on the user public level score for each user.7. The method of claim 1, wherein the controlling comprisesautomatically setting a deactivating lock on an input tool of the GUI ofeach chat room of the plurality of chat rooms based on the public levelof the chat room.
 8. The method of claim 1, wherein the controllingcomprises: overlaying an inactivation window on an input tool of the GUIof each chat room of the plurality of chat rooms based on the publiclevel of the chat room, the inactivation window deactivating the inputtool; and displaying guidance information on the inactivation window,the guidance information related to a public relation of the users ofthe chat room.
 9. The method of claim 1, wherein the controllingcomprises highlighting or autocorrecting words input in the GUI of eachchat room of the plurality of chat rooms based on the public level ofthe each chat room.
 10. The method of claim 1, wherein the controllingcomprises recommending an emoticon or a sticker corresponding to thepublic level of each chat room of the plurality of chat rooms throughthe GUI of the chat room.
 11. The method of claim 1, wherein thecontrolling comprises: determining a public level change score between apublic level of a current chat room which a user enters and a publiclevel of a previous chat room which the user previously entered; anddisplaying a notification to the current chat room in response to thepublic level score change being above a desired change level score whendisplaying the current chat room in response to the user entering thecurrent chat room.
 12. The method of claim 1, wherein the controllingcomprises displaying different display elements corresponding to eachchat room of the plurality of chat rooms based on the public level ofthe chat room.
 13. The method of claim 1, wherein the controllingcomprises sorting a chat room list, or grouping and displaying theplurality of chat rooms based on the public level of the plurality ofchat rooms.
 14. The method of claim 1, wherein the controllingcomprises: displaying a shared object list GUI in the GUI of the chatapplication, the displaying the shared object list GUI includingvisually separating each chat room of the plurality of chat roomsincluded in the shared object list GUI based on the public level of thepublic level of the chat room included in the shared object list GUI,the shared object list GUI including objects to be shared between thechat application and a second application.
 15. The method of claim 1,further comprising: analyzing, using the at least one processor, thechat contents of at least one chat room of the plurality of chat rooms;extracting, using the at least one processor, at least one main subjectof the at least one chat room based on the analyzing the chat contentsof the at least one chat room; and analyzing, using the at least oneprocessor, chat content input by a user into a GUI of the at least onechat room, wherein the controlling comprises displaying a notificationon the GUI of the at least one chat room based on the extracted at leastone main subject and results of the analyzing the chat content input bythe user.
 16. The method of claim 1, wherein the analyzing comprises:calculating a frequency of an honorific language extracted from the chatcontents; calculating an importance score of the extracted honorificlanguage in relation to usage of the extracted honorific language in asentence; and calculating a public score of the chat contents based onthe calculated frequency of the honorific language and the calculatedimportance score.
 17. The method of claim 16, wherein the calculatingthe public score comprises: calculating the public score based on atleast one of average sentence length of the chat contents, frequency ofuse of nonstandard language of the chat contents, completion of sentencestructure of the chat contents, or combinations thereof.
 18. The methodof claim 16, wherein the calculating the public score comprises:calculating the public score based on weights assigned to a contactgroup name in which a user of the plurality of users is included, shortrange communication with the user, and contents shared with the user.19. A computer system comprising a memory; and at least one processorwhich is connected with the memory, and configured to execute computerreadable instructions to, receive chat contents related to a pluralityof chat rooms in a chat application, analyze the chat contentscorresponding to each user of a plurality of users registered in thechat application and included in the plurality of chat rooms, theanalyzing including, determine a public level of each chat room of theplurality of chat rooms based on a result of analyzing the chat contentwith regard to each chat room of the plurality of chat rooms, andcontrol user access of a graphical user interface (GUI) of the chatapplication based on the determined public level of each chat room, thecontrolling including modifying a GUI corresponding to each chat room ofthe plurality of chat rooms based on the public level of each chatrooms, and wherein the at least one processor is configured to, receivea user input corresponding to a content share operation in associationwith each chat room among the plurality of chat rooms; and display anotification regarding contents to be shared by the content shareoperation based on the public level of the chat room.